table → gen(s(0))
gen(x) → if1(le(x, 10), x)
if1(false, x) → nil
if1(true, x) → if2(x, x)
if2(x, y) → if3(le(y, 10), x, y)
if3(true, x, y) → cons(entry(x, y, times(x, y)), if2(x, s(y)))
if3(false, x, y) → gen(s(x))
le(0, y) → true
le(s(x), 0) → false
le(s(x), s(y)) → le(x, y)
plus(0, y) → y
plus(s(x), y) → s(plus(x, y))
times(0, y) → 0
times(s(x), y) → plus(y, times(x, y))
10 → s(s(s(s(s(s(s(s(s(s(0))))))))))
↳ QTRS
↳ Overlay + Local Confluence
table → gen(s(0))
gen(x) → if1(le(x, 10), x)
if1(false, x) → nil
if1(true, x) → if2(x, x)
if2(x, y) → if3(le(y, 10), x, y)
if3(true, x, y) → cons(entry(x, y, times(x, y)), if2(x, s(y)))
if3(false, x, y) → gen(s(x))
le(0, y) → true
le(s(x), 0) → false
le(s(x), s(y)) → le(x, y)
plus(0, y) → y
plus(s(x), y) → s(plus(x, y))
times(0, y) → 0
times(s(x), y) → plus(y, times(x, y))
10 → s(s(s(s(s(s(s(s(s(s(0))))))))))
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
table → gen(s(0))
gen(x) → if1(le(x, 10), x)
if1(false, x) → nil
if1(true, x) → if2(x, x)
if2(x, y) → if3(le(y, 10), x, y)
if3(true, x, y) → cons(entry(x, y, times(x, y)), if2(x, s(y)))
if3(false, x, y) → gen(s(x))
le(0, y) → true
le(s(x), 0) → false
le(s(x), s(y)) → le(x, y)
plus(0, y) → y
plus(s(x), y) → s(plus(x, y))
times(0, y) → 0
times(s(x), y) → plus(y, times(x, y))
10 → s(s(s(s(s(s(s(s(s(s(0))))))))))
table
gen(x0)
if1(false, x0)
if1(true, x0)
if2(x0, x1)
if3(true, x0, x1)
if3(false, x0, x1)
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
10
IF3(false, x, y) → GEN(s(x))
IF2(x, y) → 101
IF2(x, y) → LE(y, 10)
GEN(x) → LE(x, 10)
IF3(true, x, y) → IF2(x, s(y))
GEN(x) → 101
LE(s(x), s(y)) → LE(x, y)
TIMES(s(x), y) → PLUS(y, times(x, y))
IF3(true, x, y) → TIMES(x, y)
TABLE → GEN(s(0))
TIMES(s(x), y) → TIMES(x, y)
GEN(x) → IF1(le(x, 10), x)
IF1(true, x) → IF2(x, x)
IF2(x, y) → IF3(le(y, 10), x, y)
PLUS(s(x), y) → PLUS(x, y)
table → gen(s(0))
gen(x) → if1(le(x, 10), x)
if1(false, x) → nil
if1(true, x) → if2(x, x)
if2(x, y) → if3(le(y, 10), x, y)
if3(true, x, y) → cons(entry(x, y, times(x, y)), if2(x, s(y)))
if3(false, x, y) → gen(s(x))
le(0, y) → true
le(s(x), 0) → false
le(s(x), s(y)) → le(x, y)
plus(0, y) → y
plus(s(x), y) → s(plus(x, y))
times(0, y) → 0
times(s(x), y) → plus(y, times(x, y))
10 → s(s(s(s(s(s(s(s(s(s(0))))))))))
table
gen(x0)
if1(false, x0)
if1(true, x0)
if2(x0, x1)
if3(true, x0, x1)
if3(false, x0, x1)
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
10
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
IF3(false, x, y) → GEN(s(x))
IF2(x, y) → 101
IF2(x, y) → LE(y, 10)
GEN(x) → LE(x, 10)
IF3(true, x, y) → IF2(x, s(y))
GEN(x) → 101
LE(s(x), s(y)) → LE(x, y)
TIMES(s(x), y) → PLUS(y, times(x, y))
IF3(true, x, y) → TIMES(x, y)
TABLE → GEN(s(0))
TIMES(s(x), y) → TIMES(x, y)
GEN(x) → IF1(le(x, 10), x)
IF1(true, x) → IF2(x, x)
IF2(x, y) → IF3(le(y, 10), x, y)
PLUS(s(x), y) → PLUS(x, y)
table → gen(s(0))
gen(x) → if1(le(x, 10), x)
if1(false, x) → nil
if1(true, x) → if2(x, x)
if2(x, y) → if3(le(y, 10), x, y)
if3(true, x, y) → cons(entry(x, y, times(x, y)), if2(x, s(y)))
if3(false, x, y) → gen(s(x))
le(0, y) → true
le(s(x), 0) → false
le(s(x), s(y)) → le(x, y)
plus(0, y) → y
plus(s(x), y) → s(plus(x, y))
times(0, y) → 0
times(s(x), y) → plus(y, times(x, y))
10 → s(s(s(s(s(s(s(s(s(s(0))))))))))
table
gen(x0)
if1(false, x0)
if1(true, x0)
if2(x0, x1)
if3(true, x0, x1)
if3(false, x0, x1)
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
10
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QDP
↳ QDP
PLUS(s(x), y) → PLUS(x, y)
table → gen(s(0))
gen(x) → if1(le(x, 10), x)
if1(false, x) → nil
if1(true, x) → if2(x, x)
if2(x, y) → if3(le(y, 10), x, y)
if3(true, x, y) → cons(entry(x, y, times(x, y)), if2(x, s(y)))
if3(false, x, y) → gen(s(x))
le(0, y) → true
le(s(x), 0) → false
le(s(x), s(y)) → le(x, y)
plus(0, y) → y
plus(s(x), y) → s(plus(x, y))
times(0, y) → 0
times(s(x), y) → plus(y, times(x, y))
10 → s(s(s(s(s(s(s(s(s(s(0))))))))))
table
gen(x0)
if1(false, x0)
if1(true, x0)
if2(x0, x1)
if3(true, x0, x1)
if3(false, x0, x1)
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
10
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDP
↳ QDP
PLUS(s(x), y) → PLUS(x, y)
table
gen(x0)
if1(false, x0)
if1(true, x0)
if2(x0, x1)
if3(true, x0, x1)
if3(false, x0, x1)
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
10
table
gen(x0)
if1(false, x0)
if1(true, x0)
if2(x0, x1)
if3(true, x0, x1)
if3(false, x0, x1)
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
10
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
↳ QDP
PLUS(s(x), y) → PLUS(x, y)
From the DPs we obtained the following set of size-change graphs:
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QDP
TIMES(s(x), y) → TIMES(x, y)
table → gen(s(0))
gen(x) → if1(le(x, 10), x)
if1(false, x) → nil
if1(true, x) → if2(x, x)
if2(x, y) → if3(le(y, 10), x, y)
if3(true, x, y) → cons(entry(x, y, times(x, y)), if2(x, s(y)))
if3(false, x, y) → gen(s(x))
le(0, y) → true
le(s(x), 0) → false
le(s(x), s(y)) → le(x, y)
plus(0, y) → y
plus(s(x), y) → s(plus(x, y))
times(0, y) → 0
times(s(x), y) → plus(y, times(x, y))
10 → s(s(s(s(s(s(s(s(s(s(0))))))))))
table
gen(x0)
if1(false, x0)
if1(true, x0)
if2(x0, x1)
if3(true, x0, x1)
if3(false, x0, x1)
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
10
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDP
TIMES(s(x), y) → TIMES(x, y)
table
gen(x0)
if1(false, x0)
if1(true, x0)
if2(x0, x1)
if3(true, x0, x1)
if3(false, x0, x1)
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
10
table
gen(x0)
if1(false, x0)
if1(true, x0)
if2(x0, x1)
if3(true, x0, x1)
if3(false, x0, x1)
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
10
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
TIMES(s(x), y) → TIMES(x, y)
From the DPs we obtained the following set of size-change graphs:
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
LE(s(x), s(y)) → LE(x, y)
table → gen(s(0))
gen(x) → if1(le(x, 10), x)
if1(false, x) → nil
if1(true, x) → if2(x, x)
if2(x, y) → if3(le(y, 10), x, y)
if3(true, x, y) → cons(entry(x, y, times(x, y)), if2(x, s(y)))
if3(false, x, y) → gen(s(x))
le(0, y) → true
le(s(x), 0) → false
le(s(x), s(y)) → le(x, y)
plus(0, y) → y
plus(s(x), y) → s(plus(x, y))
times(0, y) → 0
times(s(x), y) → plus(y, times(x, y))
10 → s(s(s(s(s(s(s(s(s(s(0))))))))))
table
gen(x0)
if1(false, x0)
if1(true, x0)
if2(x0, x1)
if3(true, x0, x1)
if3(false, x0, x1)
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
10
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
LE(s(x), s(y)) → LE(x, y)
table
gen(x0)
if1(false, x0)
if1(true, x0)
if2(x0, x1)
if3(true, x0, x1)
if3(false, x0, x1)
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
10
table
gen(x0)
if1(false, x0)
if1(true, x0)
if2(x0, x1)
if3(true, x0, x1)
if3(false, x0, x1)
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
10
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
LE(s(x), s(y)) → LE(x, y)
From the DPs we obtained the following set of size-change graphs:
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
IF3(false, x, y) → GEN(s(x))
IF3(true, x, y) → IF2(x, s(y))
GEN(x) → IF1(le(x, 10), x)
IF1(true, x) → IF2(x, x)
IF2(x, y) → IF3(le(y, 10), x, y)
table → gen(s(0))
gen(x) → if1(le(x, 10), x)
if1(false, x) → nil
if1(true, x) → if2(x, x)
if2(x, y) → if3(le(y, 10), x, y)
if3(true, x, y) → cons(entry(x, y, times(x, y)), if2(x, s(y)))
if3(false, x, y) → gen(s(x))
le(0, y) → true
le(s(x), 0) → false
le(s(x), s(y)) → le(x, y)
plus(0, y) → y
plus(s(x), y) → s(plus(x, y))
times(0, y) → 0
times(s(x), y) → plus(y, times(x, y))
10 → s(s(s(s(s(s(s(s(s(s(0))))))))))
table
gen(x0)
if1(false, x0)
if1(true, x0)
if2(x0, x1)
if3(true, x0, x1)
if3(false, x0, x1)
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
10
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
IF3(false, x, y) → GEN(s(x))
IF3(true, x, y) → IF2(x, s(y))
GEN(x) → IF1(le(x, 10), x)
IF1(true, x) → IF2(x, x)
IF2(x, y) → IF3(le(y, 10), x, y)
10 → s(s(s(s(s(s(s(s(s(s(0))))))))))
le(0, y) → true
le(s(x), 0) → false
le(s(x), s(y)) → le(x, y)
table
gen(x0)
if1(false, x0)
if1(true, x0)
if2(x0, x1)
if3(true, x0, x1)
if3(false, x0, x1)
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
10
table
gen(x0)
if1(false, x0)
if1(true, x0)
if2(x0, x1)
if3(true, x0, x1)
if3(false, x0, x1)
plus(0, x0)
plus(s(x0), x1)
times(0, x0)
times(s(x0), x1)
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
IF3(false, x, y) → GEN(s(x))
IF3(true, x, y) → IF2(x, s(y))
IF1(true, x) → IF2(x, x)
GEN(x) → IF1(le(x, 10), x)
IF2(x, y) → IF3(le(y, 10), x, y)
10 → s(s(s(s(s(s(s(s(s(s(0))))))))))
le(0, y) → true
le(s(x), 0) → false
le(s(x), s(y)) → le(x, y)
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
10
GEN(x) → IF1(le(x, s(s(s(s(s(s(s(s(s(s(0))))))))))), x)
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
IF3(false, x, y) → GEN(s(x))
IF3(true, x, y) → IF2(x, s(y))
GEN(x) → IF1(le(x, s(s(s(s(s(s(s(s(s(s(0))))))))))), x)
IF1(true, x) → IF2(x, x)
IF2(x, y) → IF3(le(y, 10), x, y)
10 → s(s(s(s(s(s(s(s(s(s(0))))))))))
le(0, y) → true
le(s(x), 0) → false
le(s(x), s(y)) → le(x, y)
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
10
IF2(x, y) → IF3(le(y, s(s(s(s(s(s(s(s(s(s(0))))))))))), x, y)
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
IF3(false, x, y) → GEN(s(x))
IF3(true, x, y) → IF2(x, s(y))
GEN(x) → IF1(le(x, s(s(s(s(s(s(s(s(s(s(0))))))))))), x)
IF1(true, x) → IF2(x, x)
IF2(x, y) → IF3(le(y, s(s(s(s(s(s(s(s(s(s(0))))))))))), x, y)
10 → s(s(s(s(s(s(s(s(s(s(0))))))))))
le(0, y) → true
le(s(x), 0) → false
le(s(x), s(y)) → le(x, y)
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
10
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
IF3(false, x, y) → GEN(s(x))
IF3(true, x, y) → IF2(x, s(y))
GEN(x) → IF1(le(x, s(s(s(s(s(s(s(s(s(s(0))))))))))), x)
IF1(true, x) → IF2(x, x)
IF2(x, y) → IF3(le(y, s(s(s(s(s(s(s(s(s(s(0))))))))))), x, y)
le(0, y) → true
le(s(x), s(y)) → le(x, y)
le(s(x), 0) → false
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
10
10
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ RemovalProof
IF3(false, x, y) → GEN(s(x))
IF3(true, x, y) → IF2(x, s(y))
GEN(x) → IF1(le(x, s(s(s(s(s(s(s(s(s(s(0))))))))))), x)
IF1(true, x) → IF2(x, x)
IF2(x, y) → IF3(le(y, s(s(s(s(s(s(s(s(s(s(0))))))))))), x, y)
le(0, y) → true
le(s(x), s(y)) → le(x, y)
le(s(x), 0) → false
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ RemovalProof
↳ QDP
↳ NonInfProof
IF3(false, x, y, x_removed) → GEN(s(x), x_removed)
IF1(true, x, x_removed) → IF2(x, x, x_removed)
IF2(x, y, x_removed) → IF3(le(y, x_removed), x, y, x_removed)
IF3(true, x, y, x_removed) → IF2(x, s(y), x_removed)
GEN(x, x_removed) → IF1(le(x, x_removed), x, x_removed)
le(0, y) → true
le(s(x), s(y)) → le(x, y)
le(s(x), 0) → false
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
(1) (IF3(le(x9, x10), x8, x9, x10)=IF3(false, x11, x12, x13) ⇒ IF3(false, x11, x12, x13)≥GEN(s(x11), x13))
(2) (le(x9, x10)=false ⇒ IF3(false, x8, x9, x10)≥GEN(s(x8), x10))
(3) (le(x82, x83)=false∧(∀x84:le(x82, x83)=false ⇒ IF3(false, x84, x82, x83)≥GEN(s(x84), x83)) ⇒ IF3(false, x8, s(x82), s(x83))≥GEN(s(x8), s(x83)))
(4) (false=false ⇒ IF3(false, x8, s(x85), 0)≥GEN(s(x8), 0))
(5) (IF3(false, x8, x82, x83)≥GEN(s(x8), x83) ⇒ IF3(false, x8, s(x82), s(x83))≥GEN(s(x8), s(x83)))
(6) (IF3(false, x8, s(x85), 0)≥GEN(s(x8), 0))
(7) (GEN(s(x16), x18)=GEN(x19, x20) ⇒ GEN(x19, x20)≥IF1(le(x19, x20), x19, x20))
(8) (GEN(s(x16), x18)≥IF1(le(s(x16), x18), s(x16), x18))
(9) (IF3(le(x40, x41), x39, x40, x41)=IF3(true, x42, x43, x44) ⇒ IF3(true, x42, x43, x44)≥IF2(x42, s(x43), x44))
(10) (le(x40, x41)=true ⇒ IF3(true, x39, x40, x41)≥IF2(x39, s(x40), x41))
(11) (true=true ⇒ IF3(true, x39, 0, x86)≥IF2(x39, s(0), x86))
(12) (le(x87, x88)=true∧(∀x89:le(x87, x88)=true ⇒ IF3(true, x89, x87, x88)≥IF2(x89, s(x87), x88)) ⇒ IF3(true, x39, s(x87), s(x88))≥IF2(x39, s(s(x87)), s(x88)))
(13) (IF3(true, x39, 0, x86)≥IF2(x39, s(0), x86))
(14) (IF3(true, x39, x87, x88)≥IF2(x39, s(x87), x88) ⇒ IF3(true, x39, s(x87), s(x88))≥IF2(x39, s(s(x87)), s(x88)))
(15) (IF2(x52, s(x53), x54)=IF2(x55, x56, x57) ⇒ IF2(x55, x56, x57)≥IF3(le(x56, x57), x55, x56, x57))
(16) (IF2(x52, s(x53), x54)≥IF3(le(s(x53), x54), x52, s(x53), x54))
(17) (IF2(x61, x61, x62)=IF2(x63, x64, x65) ⇒ IF2(x63, x64, x65)≥IF3(le(x64, x65), x63, x64, x65))
(18) (IF2(x61, x61, x62)≥IF3(le(x61, x62), x61, x61, x62))
(19) (IF1(le(x69, x70), x69, x70)=IF1(true, x71, x72) ⇒ IF1(true, x71, x72)≥IF2(x71, x71, x72))
(20) (le(x69, x70)=true ⇒ IF1(true, x69, x70)≥IF2(x69, x69, x70))
(21) (true=true ⇒ IF1(true, 0, x91)≥IF2(0, 0, x91))
(22) (le(x92, x93)=true∧(le(x92, x93)=true ⇒ IF1(true, x92, x93)≥IF2(x92, x92, x93)) ⇒ IF1(true, s(x92), s(x93))≥IF2(s(x92), s(x92), s(x93)))
(23) (IF1(true, 0, x91)≥IF2(0, 0, x91))
(24) (IF1(true, x92, x93)≥IF2(x92, x92, x93) ⇒ IF1(true, s(x92), s(x93))≥IF2(s(x92), s(x92), s(x93)))
POL(0) = 0
POL(GEN(x1, x2)) = 1 - x1 + x2
POL(IF1(x1, x2, x3)) = 1 - x1 - x2 + x3
POL(IF2(x1, x2, x3)) = -x1 + x3
POL(IF3(x1, x2, x3, x4)) = -x1 - x2 + x4
POL(c) = -1
POL(false) = 0
POL(le(x1, x2)) = 0
POL(s(x1)) = 1 + x1
POL(true) = 0
The following pairs are in Pbound:
IF1(true, x, x_removed) → IF2(x, x, x_removed)
The following rules are usable:
IF1(true, x, x_removed) → IF2(x, x, x_removed)
le(x, y) → le(s(x), s(y))
true → le(0, y)
false → le(s(x), 0)
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ RemovalProof
↳ QDP
↳ NonInfProof
↳ QDP
↳ DependencyGraphProof
IF3(false, x, y, x_removed) → GEN(s(x), x_removed)
IF2(x, y, x_removed) → IF3(le(y, x_removed), x, y, x_removed)
GEN(x, x_removed) → IF1(le(x, x_removed), x, x_removed)
IF3(true, x, y, x_removed) → IF2(x, s(y), x_removed)
le(0, y) → true
le(s(x), s(y)) → le(x, y)
le(s(x), 0) → false
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ RemovalProof
↳ QDP
↳ NonInfProof
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ NonInfProof
IF2(x, y, x_removed) → IF3(le(y, x_removed), x, y, x_removed)
IF3(true, x, y, x_removed) → IF2(x, s(y), x_removed)
le(0, y) → true
le(s(x), s(y)) → le(x, y)
le(s(x), 0) → false
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
(1) (IF3(le(x40, x41), x39, x40, x41)=IF3(true, x42, x43, x44) ⇒ IF3(true, x42, x43, x44)≥IF2(x42, s(x43), x44))
(2) (le(x40, x41)=true ⇒ IF3(true, x39, x40, x41)≥IF2(x39, s(x40), x41))
(3) (true=true ⇒ IF3(true, x39, 0, x86)≥IF2(x39, s(0), x86))
(4) (le(x87, x88)=true∧(∀x89:le(x87, x88)=true ⇒ IF3(true, x89, x87, x88)≥IF2(x89, s(x87), x88)) ⇒ IF3(true, x39, s(x87), s(x88))≥IF2(x39, s(s(x87)), s(x88)))
(5) (IF3(true, x39, 0, x86)≥IF2(x39, s(0), x86))
(6) (IF3(true, x39, x87, x88)≥IF2(x39, s(x87), x88) ⇒ IF3(true, x39, s(x87), s(x88))≥IF2(x39, s(s(x87)), s(x88)))
(7) (IF2(x52, s(x53), x54)=IF2(x55, x56, x57) ⇒ IF2(x55, x56, x57)≥IF3(le(x56, x57), x55, x56, x57))
(8) (IF2(x52, s(x53), x54)≥IF3(le(s(x53), x54), x52, s(x53), x54))
POL(0) = 0
POL(IF2(x1, x2, x3)) = -1 + x1 - x2 + x3
POL(IF3(x1, x2, x3, x4)) = -1 - x1 + x2 - x3 + x4
POL(c) = -2
POL(false) = 0
POL(le(x1, x2)) = 0
POL(s(x1)) = 1 + x1
POL(true) = 0
The following pairs are in Pbound:
IF3(true, x, y, x_removed) → IF2(x, s(y), x_removed)
The following rules are usable:
IF3(true, x, y, x_removed) → IF2(x, s(y), x_removed)
le(x, y) → le(s(x), s(y))
true → le(0, y)
false → le(s(x), 0)
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ RemovalProof
↳ QDP
↳ NonInfProof
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ NonInfProof
↳ QDP
↳ DependencyGraphProof
IF2(x, y, x_removed) → IF3(le(y, x_removed), x, y, x_removed)
le(0, y) → true
le(s(x), s(y)) → le(x, y)
le(s(x), 0) → false
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))